package com.ssy.jt808.gateway.client.media.constant;

import com.ssy.gaea.common.exception.UnknownEnumException;

/**
 * @author zeno
 */
public enum LiveAVCloseEnum{

  /** 关闭该通道有关的音视频数据 */
  CloseAll(0),
  /** 只关闭该通道有关的音频,保留该通道有关的视频 */
  CloseAudio(1),
  /** 只关闭该通道有关的视频,保留该通道有关的音频 */
  CloseVideo(2);

  LiveAVCloseEnum( int value ){
    this.value = value;
  }

  /** 枚举状态值 */
  private final int value;

  /**
   * 获取枚举状态值
   *
   * @return 枚举状态值
   */
  public int value(){
    return value;
  }

  /**
   * 根据 状态值 获取枚举对象
   *
   * @param value 状态值
   *
   * @return 枚举对象
   */
  public static LiveAVCloseEnum of( int value ){

    for(LiveAVCloseEnum e : LiveAVCloseEnum.values()){
      if( e.value == value ){
        return e;
      }
    }

    throw new UnknownEnumException(value, LiveAVCloseEnum.class);
  }
}
